import { defineStore } from "pinia";
import { isLoggedIn, setToken, removeToken } from "@/utils/token";
import { ref, computed } from "vue";

export const useLoginStore = defineStore("login", () => {
  const token = ref(isLoggedIn());
  const isLogin = computed(() => !!token.value); // 使用 !! 确保返回布尔值

  // 登录方法
  const login = (newToken) => {
    setToken(newToken); // 设置 token
    token.value = newToken; // 更新 token
  };

  const exitLogin = () => {
    removeToken(); // 移除 token
    token.value = null; // 清空 token
    window.location.reload(); // 刷新页面可选择用 router.push('/')
  };

  return {
    token,
    isLogin,
    login,
    exitLogin,
  };
});
